Skip to content

docs(opencut): sync template standards updates#361

Merged
mberlofa merged 2 commits into
mainfrom
docs/opencut-template-standards-sync
Jul 6, 2026
Merged

docs(opencut): sync template standards updates#361
mberlofa merged 2 commits into
mainfrom
docs/opencut-template-standards-sync

Conversation

@mberlofa

@mberlofa mberlofa commented Jul 4, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Document networkPolicy.extraEgress for OpenCut.
  • Add OpenCut playground controls for custom egress CIDR and port.
  • Register OpenCut in the playground sync allowlist.

Related

Validation

  • npm run lint
  • npm run format:check
  • npm run build
  • make site-sync-check CHART=opencut
  • make release-check REPO=site
  • make attribution-check REPO=site

Summary by CodeRabbit

  • New Features

    • Added extra egress options to the Network Policy section for the Opencut chart playground.
    • Opencut is now included in the playground’s available chart list.
  • Documentation

    • Updated Opencut chart docs with networkPolicy.extraEgress (including defaults) and adjusted the “Production Values” example accordingly.

@coderabbitai

coderabbitai Bot commented Jul 4, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 649a93d7-9a79-4e7e-b5f2-41c8d64c58a5

📥 Commits

Reviewing files that changed from the base of the PR and between 68d542c and cd7287c.

📒 Files selected for processing (3)
  • src/data/playground-configs.ts
  • src/pages/docs/charts/opencut.mdx
  • src/pages/playground.astro
✅ Files skipped from review due to trivial changes (1)
  • src/pages/docs/charts/opencut.mdx
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/pages/playground.astro

📝 Walkthrough

Walkthrough

This PR adds opencut network policy egress fields, documents networkPolicy.extraEgress, and registers opencut in the playground chart mapping.

Changes

Opencut Network Policy Egress Configuration

Layer / File(s) Summary
Network policy inputs
src/data/playground-configs.ts
Introduces a collapsible Network Policy section for opencut gated by networkPolicy.enabled, with inputs for an extra egress CIDR and port.
Docs and playground registration
src/pages/docs/charts/opencut.mdx, src/pages/playground.astro
Adds networkPolicy.extraEgress to the opencut example and values table, and adds opencut to siteSyncPlaygroundConfigs.

Estimated code review effort: 2 (Simple) | ~10 minutes

Possibly related PRs

  • helmforgedev/site#350: Both PRs add and document networkPolicy.extraEgress fields for a chart config.
  • helmforgedev/site#353: Both PRs add a Network Policy section in playground config and update the corresponding chart docs plus playground registration.
  • helmforgedev/site#356: Both PRs wire networkPolicy fields into src/data/playground-configs.ts and update src/pages/playground.astro for chart sync.
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description covers summary, related links, and validation, but it misses the required Quality Gates checklist and the template’s Related Issue section. Add the Quality Gates checkbox list from the template and fill the Related Issue field in the required format.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title is concise and matches the PR’s docs/playground sync changes for OpenCut.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/opencut-template-standards-sync

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
src/data/playground-configs.ts (2)

235-262: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Merge the duplicate Apache Network Policy section
Apache now declares Network Policy twice with the same gateField. buildControls() keys section state and DOM lookup by group.name, so the two blocks collide and the second one won’t update correctly. Fold the extra egress fields into the existing section, or give the new block a unique name.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/data/playground-configs.ts` around lines 235 - 262, The “Network Policy”
section is duplicated with the same gateField, which causes buildControls() to
collide on group.name and break section state/DOM updates. Update the
playground-configs.ts configuration so the existing Network Policy group
contains both ingress and egress fields, or rename the extra block to a unique
name. Use the Network Policy entries in the configs array and the
buildControls() grouping behavior as the guide when fixing this.

1485-1528: 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

Add OpenCut Network Policy controls to the playground. src/pages/docs/charts/opencut.mdx documents networkPolicy.extraEgress, but opencut in src/data/playground-configs.ts only exposes General and Ingress, so the playground hides the documented option.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/data/playground-configs.ts` around lines 1485 - 1528, Add the missing
OpenCut Network Policy section to the opencut playground config in
playground-configs so the documented networkPolicy.extraEgress setting is
editable. Update the opencut entry alongside the existing General and Ingress
groups, using the same field shape and a clear label/key for
networkPolicy.extraEgress, so the playground exposes the option documented in
the opencut chart docs.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@src/data/playground-configs.ts`:
- Around line 235-262: The “Network Policy” section is duplicated with the same
gateField, which causes buildControls() to collide on group.name and break
section state/DOM updates. Update the playground-configs.ts configuration so the
existing Network Policy group contains both ingress and egress fields, or rename
the extra block to a unique name. Use the Network Policy entries in the configs
array and the buildControls() grouping behavior as the guide when fixing this.
- Around line 1485-1528: Add the missing OpenCut Network Policy section to the
opencut playground config in playground-configs so the documented
networkPolicy.extraEgress setting is editable. Update the opencut entry
alongside the existing General and Ingress groups, using the same field shape
and a clear label/key for networkPolicy.extraEgress, so the playground exposes
the option documented in the opencut chart docs.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 7e9ef1d4-29c1-4040-8c25-e53dc74243c2

📥 Commits

Reviewing files that changed from the base of the PR and between 365449a and 2fa2824.

📒 Files selected for processing (3)
  • src/data/playground-configs.ts
  • src/pages/docs/charts/opencut.mdx
  • src/pages/playground.astro

@mberlofa mberlofa force-pushed the docs/opencut-template-standards-sync branch from 2fa2824 to 2e2f26e Compare July 4, 2026 05:45

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (1)
src/data/playground-configs.ts (1)

236-262: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Merge "Extra Egress" into the existing "Network Policy" group.

Both groups use the identical gateField: 'networkPolicy.enabled'. Elsewhere in this file (e.g. memcached, discount-bandit, phpmyadmin) egress-related fields are consolidated into a single "Network Policy" section rather than split across two collapsible groups with the same gate.

♻️ Suggested consolidation
     {
       name: 'Network Policy',
       collapsible: true,
       gateField: 'networkPolicy.enabled',
       fields: [
         {
           label: 'Restrict Ingress',
           key: 'networkPolicy.ingress.enabled',
           type: 'toggle',
           default: 'false',
           description: 'Restrict inbound traffic only when selectors are configured',
         },
         {
           label: 'Allow DNS',
           key: 'networkPolicy.egress.allowDns',
           type: 'toggle',
           default: 'true',
           description: 'Allow DNS egress',
         },
         {
           label: 'Allow Internet',
           key: 'networkPolicy.egress.allowInternet',
           type: 'toggle',
           default: 'true',
           description: 'Allow general outbound traffic',
         },
+        {
+          label: 'Extra Egress CIDR',
+          key: 'networkPolicy.extraEgress[0].to[0].ipBlock.cidr',
+          type: 'text',
+          default: '10.80.0.0/16',
+          description: 'Additional egress destination',
+        },
+        {
+          label: 'Extra Egress Port',
+          key: 'networkPolicy.extraEgress[0].ports[0].port',
+          type: 'number',
+          default: '443',
+          description: 'Additional TCP egress port',
+        },
       ],
     },
-    {
-      name: 'Extra Egress',
-      collapsible: true,
-      gateField: 'networkPolicy.enabled',
-      fields: [
-        {
-          label: 'Extra Egress CIDR',
-          key: 'networkPolicy.extraEgress[0].to[0].ipBlock.cidr',
-          type: 'text',
-          default: '10.80.0.0/16',
-          description: 'Additional egress destination',
-        },
-        {
-          label: 'Extra Egress Port',
-          key: 'networkPolicy.extraEgress[0].ports[0].port',
-          type: 'number',
-          default: '443',
-          description: 'Additional TCP egress port',
-        },
-      ],
-    },

Also applies to: 285-305

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@src/data/playground-configs.ts` around lines 236 - 262, Merge the separate
“Extra Egress” section into the existing “Network Policy” group in
playground-configs, since both sections use the same networkPolicy.enabled gate.
Update the Network Policy entry in the config array so it includes the
egress-related fields currently defined in the Extra Egress group, and remove
the duplicate collapsible group. Use the existing Network Policy object and its
fields list as the single place for these settings, consistent with the
memcached, discount-bandit, and phpmyadmin patterns.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Nitpick comments:
In `@src/data/playground-configs.ts`:
- Around line 236-262: Merge the separate “Extra Egress” section into the
existing “Network Policy” group in playground-configs, since both sections use
the same networkPolicy.enabled gate. Update the Network Policy entry in the
config array so it includes the egress-related fields currently defined in the
Extra Egress group, and remove the duplicate collapsible group. Use the existing
Network Policy object and its fields list as the single place for these
settings, consistent with the memcached, discount-bandit, and phpmyadmin
patterns.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: f4f71f48-eecd-48dc-bd53-a1f1a0e4dbe1

📥 Commits

Reviewing files that changed from the base of the PR and between 2fa2824 and 2e2f26e.

📒 Files selected for processing (3)
  • src/data/playground-configs.ts
  • src/pages/docs/charts/opencut.mdx
  • src/pages/playground.astro
✅ Files skipped from review due to trivial changes (1)
  • src/pages/docs/charts/opencut.mdx
🚧 Files skipped from review as they are similar to previous changes (1)
  • src/pages/playground.astro

@mberlofa

mberlofa commented Jul 5, 2026

Copy link
Copy Markdown
Contributor Author

Addressed the CodeRabbit review-body and outside-diff feedback.

Changes:

  • Merged Apache networkPolicy.extraEgress controls into the existing Network Policy playground group so group.name and gateField no longer collide.
  • Added an OpenCut Network Policy playground group exposing the documented networkPolicy.extraEgress CIDR and port fields.

Validation:

  • npm run lint passed
  • npm run build passed
  • make release-check REPO=site passed
  • make attribution-check REPO=site passed
  • git diff --check passed

Note: these CodeRabbit items were posted in review-summary/outside-diff comments, not as active review threads, so there are no thread IDs to reply to or resolve.

mberlofa added a commit to helmforgedev/charts that referenced this pull request Jul 6, 2026
## Summary

- keep the Helm test hook under `templates/tests` so `helm test` remains
functional
- add `networkPolicy.extraEgress` support with schema and unit coverage
- fix k3d IPv4-only CI values for the local validation cluster
- expand NOTES and README coverage for the operational controls

## Validation

- `make validate-chart CHART=opencut TIMEOUT=900`: FULLY VALIDATED (12
layers), including k3d behavioral scenarios for default,
`ci/ci-values.yaml`, and `ci/k3d-values.yaml`.
- k3d observed only transient resource metrics warnings in a healthy
workload; validator accepted them as justified.
- `make site-sync-check CHART=opencut`
- `make release-check REPO=charts` passed with the expected GR-077
post-merge release confirmation warning.
- `make attribution-check REPO=charts`

Site PR: helmforgedev/site#361
Issue: #633

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **New Features**
* Added `networkPolicy.extraEgress` to append additional custom egress
rules while keeping the existing DNS/database/Redis-over-HTTP/HTTPS
egress behavior.
* **Documentation**
* Updated deployment notes formatting and revised the security scan
status wording.
  * Documented `networkPolicy` networking configuration guidance.
* **CI / Configuration**
  * Updated chart networking to IPv4-only (single-stack) for CI.
* Extended the values schema and default values to support
`extraEgress`.
* **Tests**
  * Added a network policy test for “extra web egress”.
  * Removed the previous Helm connection test.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Co-authored-by: MergeCheck <mergecheck@example.invalid>
@mberlofa mberlofa force-pushed the docs/opencut-template-standards-sync branch from 68d542c to cd7287c Compare July 6, 2026 16:11
@mberlofa mberlofa merged commit 737d64d into main Jul 6, 2026
6 checks passed
@mberlofa mberlofa deleted the docs/opencut-template-standards-sync branch July 6, 2026 16:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant